package com.example.spider.starter;

/**
 * 爬虫启动触发器
 *
 * @author lym
 */
public interface SpiderStarter {

    /**
     * 启动爬虫任务
     */
    void startSpiders();

    /**
     * 启动时触发
     *
     * @return 启动时触发
     */
    default boolean startOnInit() {
        return true;
    }

    /**
     * 定时触发表达式
     *
     * @return 默认为空，不定时触发
     */
    default String executeCron() {
        return null;
    }


    /**
     * 判断是否定时触发
     *
     * @return 是否定时触发
     */
    default boolean enableCronExecute() {
        return true;
    }

    /**
     * 激活定时触发
     *
     * @return 设置结果
     */
    default boolean activeCronExecute() {
        return true;
    }

    /**
     * 关闭定时触发
     *
     * @return 设置结果
     */
    default boolean disableCronExecute() {
        return true;
    }
}
